Total Complexity | 1 |
Total Lines | 17 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 0 |
1 | import {Observer, ObserverAdapter} from '@enbock/state-value-observer/ValueObserver'; |
||
4 | |||
5 | export default class ActiveTranslatorAdapter implements ObserverAdapter<string> { |
||
6 | protected baseAdapter: ObserverAdapter<string>; |
||
7 | protected manager: Manager; |
||
8 | protected activeTranslator: Observer<Translator>; |
||
9 | |||
10 | constructor(baseAdapter: ObserverAdapter<string>, manager: Manager, activeTranslator: Observer<Translator>) { |
||
11 | 2 | this.activeTranslator = activeTranslator; |
|
12 | 2 | this.baseAdapter = baseAdapter; |
|
13 | 2 | this.manager = manager; |
|
14 | } |
||
15 | |||
16 | onChange(newValue: string): void { |
||
17 | 1 | this.manager.getTranslator(newValue).then( |
|
18 | (translator: Translator): void => { |
||
19 | 1 | this.activeTranslator.value = translator; |
|
20 | 1 | this.baseAdapter.onChange(newValue); |
|
21 | } |
||
25 |